草庐IT

xml - 我的 XPATH 表达式无法正常工作

全部标签

ruby - 反斜杠 + Ruby 正则表达式中的捕获组

如何在捕获的组之前取消反斜杠?例子:"foo+bar".gsub(/(\+)/,'\\\1')我期望(和想要)的:foo\+bar我不幸得到了什么:foo\\1bar我如何正确地逃离这里? 最佳答案 正如其他人所说,您需要将该字符串中的所有内容转义两次。因此,在您的情况下,解决方案是使用'\\\\\\1'或'\\\\\\1'。但既然你问为什么,我会试着解释那部分。原因是替换序列被解析了两次——一次由Ruby解析,一次由底层正则表达式引擎解析,其中\1是它自己的转义序列。(使用双引号字符串可能更容易理解,因为单引号引入了歧义,其中'\

ruby - 使用正则表达式获取 URL 的域

我正在尝试获取给定URL的域。例如http://www.facebook.com/someuser/将返回facebook.com。给定的URL可以是以下格式:https://www.facebook.com/someuser(www.是可选的,但应忽略)www.facebook.com/someuser(http://不是必需的)facebook.com/someuserhttp://someuser.tumblr.com->这只能返回tumblr.com我写了这个正则表达式:/(?:\.|\/{2})(?:www\.)?([^\/]*)/i但它并没有像我预期的那样工作。我可以分部分

ruby - 将多个变量与单个表达式中的值进行比较

我有两个变量a和b。我想将a和b都与一个值进行比较,例如10。我可以这样做:10==a&&10==b但是,我想知道是否有任何方法可以将它写成一个表达式?(例如像a==b==10) 最佳答案 [a,b,3].all?{|x|x==10}但在这种情况下[].all?{|x|x==10}也会返回true 关于ruby-将多个变量与单个表达式中的值进行比较,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu

ruby - 简单神经网络无法学习 XOR

我正在尝试学习神经网络,并编写了一个简单的反向传播神经网络,该网络使用S型激活函数、随机权重初始化和学习/梯度动量。当配置有2个输入、2个隐藏节点和1个时,它无法学习XOR和AND。但是,它会正确学习OR。我看不出我做错了什么,因此非常感谢任何帮助。谢谢编辑:如前所述,我测试了2个隐藏节点,但下面的代码显示配置为3。我只是忘记在使用3个隐藏节点运行测试后将其更改回2。网络.rb:moduleNeuralclassNetworkattr_accessor:num_inputs,:num_hidden_nodes,:num_output_nodes,:input_weights,:hidd

ruby - 要求无法找到 ruby​​ 文件

我是Ruby的绝对初学者。我创建了一个小的ruby​​文件,当我运行命令ruby"methods.rb"时它运行良好。这意味着我在正确的目录中。但是当我启动irb并运行命令require"methods.rb"时,我得到以下响应:LoadError:cannotloadsuchfile--methods.rbfrom/usr/local/rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:53:in`require'from/usr/local/rvm/rubie

ruby-on-rails - 安装json(1.8.3)时出错,Bundler无法继续。在 Ubuntu 上

在ubuntu14.04上安装jsongem失败安装带有native扩展的json1.8.3Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension./home/sumeruadmin/.rvm/rubies/ruby-2.2.3/bin/ruby-r./siteconf20150910-31195-1cx4b0u.rbextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR="compilinggenerator.clinkingshared-objectjson/e

ruby - DateTime 解析未按预期工作

我的Ruby代码看起来像这样。str=2010-12-02_12-10-26putsstrputsDateTime.parse(str,"%Y-%m-%d_%H-%M-%S")我希望从解析中得到实际时间。相反,我得到这样的输出......2010-12-02_12-10-262010-12-02T00:00:00+00:00我如何获得解析的时间? 最佳答案 这个有效:str="2010-12-02_12-10-26"putsstrputsDateTime.strptime(str,"%Y-%m-%d_%H-%M-%S")这个例子在C

ruby - 在 OSX 10.8.4 上使用无法识别的选项 '-arch' 安装 json-1.8.0 时 make 失败

我正在尝试正确设置我的ruby​​环境,但在尝试bundleinstall我的测试应用程序时不断收到错误。我在尝试bundleinstall时第一次遇到错误:$railsnewapp//[...]runbundleinstallFetchinggemmetadatafromhttps://rubygems.org/..Resolvingdependencies...Usingrake(10.1.0)Usingi18n(0.6.5)Usingmulti_json(1.7.9)Usingactivesupport(3.2.9)Usingbuilder(3.0.4)Usingactivemo

ruby - 如何使用正则表达式用逗号分隔字符串(括号内除外)?

我想用逗号分割一个字符串:"a,s".split','#=>['a','s']如果子字符串被括号包裹,我不想拆分它:"a,s(d,f),g,h"应该产生:['a','s(d,f)','g','h']有什么建议吗? 最佳答案 要处理嵌套括号,可以使用:txt="a,s(d,f(4,5)),g,h"pattern=Regexp.new('((?:[^,(]+|(\((?>[^()]+|\g)*\)))+)')putstxt.scan(pattern).map&:first图案细节:(#firstcapturinggroup(?:#ope

ruby - 正则表达式 [\w-] 是什么意思?

我查了文档,找不到[\w-]的意思。谁能告诉我[\w-]在Ruby中是什么意思? 最佳答案 方括号[]表示一个字符类。字符类将匹配其中的任何内容。\w是一个叫做“单词字符”的特殊类。它是[a-zA-Z0-9_]的简写,因此它将匹配:a-z(全部为小写字母)A-Z(全部大写字母)0-9(所有数字)_(下划线)你问的类[\w-]是由\w和-组成的类。所以它将匹配上面的列表,加上连字符(-)。正如所写,[\w-],这个正则表达式将匹配单个字符,只要它在上面的列表中,或者是破折号。如果您要在末尾添加量词,例如[\w-]*或[\w-]+,那么